-
Notifications
You must be signed in to change notification settings - Fork 15
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: governance scripts #1019
feat: governance scripts #1019
Conversation
gov/scripts/.gitignore
Outdated
@@ -0,0 +1,3 @@ | |||
/node_modules/ | |||
.yarn/cache | |||
.yarn/install-state.gz |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
.yarn/install-state.gz не нужно исключать, если у тебя стоит старый yarn
А новый yarn можно установить в проект только локально, смотри .yarnrc.yml в tests.
Но вместо того, чтобы ставить его сюда... Предлагаю переместить эти скрипты в тесты.
Это позволит избавиться ещё от lock файла лишнего.
Как насчёт JS часть прибрать, и разбить на пакеты?
Завести js-packages, а там
js-packages/types (Бывший types/src/interfaces)
js-packages/tests (Остальное содержимое тестов)
js-packages/playgrounds (Плейграунды, чтобы их было проще в чистоте поддерживать)
js-packages/scripts (Вынести туда калибрацию и всё прочее для мейнтененса, в т.ч governance)
Я работал с yarn3 воркспейсами, и могу сделать основную часть этого рефакторинга
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Подобное разнесение уже давно напрашивается для JS части
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Также хочется некоторые утилиты тесно связанные с нашими тестами и чейном там разместить, чтобы веб команда в том числе могла их переиспользовать без копипасты, но при этом мы могли там размещать сложную логику, которую имеет смысл поддерживать одновременно с чейном. Потенциально кодирование будущего RBAC надо бы где-то разместить, поскольку битфилды в polkadot.js поддерживаются никак.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
В тесты это класть как-то не хочется. Я мог вообще отдельный репо под это дело завести, на самом деле.
Оно только для удобства governance-related повторяемых действий
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Не хочется иметь несколько больших локфайлов и использовать несколько разных версий yarn, у нас и без того гитхаб жалуется на уязвимости)
Если нет необходимости хранить в этой репе - то отдельная тоже хорошо. А скрипты в тестах... Они уже есть, и поэтому сейчас у нас директория тестов уже является js-барахолкой
const councilProposalThreshold = Math.floor(councilMembers.length / 2) + 1; | ||
|
||
const democracyProposal = api.tx.democracy.externalProposeDefault({ | ||
Inline: authorizeUpgrade.method.toHex(), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Не совсем понимаю, а в чём отличие между ISubmittable.toHex() от ISubmittable.method.toHex()?
Действий не требует, просто обычно я напрямую делал
No description provided.